package com.chengxiaoxiao.ai_demo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.chengxiaoxiao.ai_demo.entity.OriginalMessage;
import com.chengxiaoxiao.ai_demo.vo.form.ChatForm;

import java.util.List;


/**
 * 原始消息 服务类
 *
 * @Description:
 * @Author: Cheng Xiaoxiao
 * @Date: 2023-08-01 03:06:36
 */
public interface OriginalMessageService extends IService<OriginalMessage> {
    /**
     * 获取原始消息详情
     *
     * @param id ID
     * @return 单个原始消息详情
     */
    OriginalMessage detailById(String id);

    /**
     * 增加原始消息
     *
     * @param originalMessage 原始消息
     * @return 增加后的数据
     */
    OriginalMessage saveUserMessage(OriginalMessage originalMessage);

    /**
     * 修改原始消息
     *
     * @param originalMessage 原始消息对象
     * @return 修改后的数据
     */
    OriginalMessage updateOriginalMessageById(OriginalMessage originalMessage);

    /**
     * 根据ID删除信息
     *
     * @param id ID
     */
    void deleteById(String id);

    /**
     * 根据会话ID查询原始消息
     *
     * @param conversationId 会话ID
     * @return 原始消息
     */
    List<OriginalMessage> listByConversationId(String conversationId);

    /**
     * 保存用户消息
     *
     * @param id       会话ID
     * @param chatForm 用户表单
     */
    void saveUserMessage(String id, ChatForm chatForm);

    /**
     * 保存AI消息
     *
     * @param id   会话ID
     * @param text 消息
     */
    void saveAiMessage(String id, String text);
}